an* algorithm 8 puzzle problem